package com.hex.ds.hdrs.period.task.dao;


import com.hex.bigdata.hbda.base.BaseDao;
import com.hex.bigdata.hbda.base.Page;
import com.hex.ds.hdrs.period.task.dto.PeriodTaskDefDto;
import com.hex.ds.hdrs.period.task.po.PeriodTaskDef;
import org.springframework.stereotype.Repository;

import java.util.List;
import java.util.Map;

@Repository
public class PeriodTaskDefDao extends BaseDao {

    /**
     * 查询全量任务定义list
     *
     * @return
     */
    public List<PeriodTaskDef> qryTaskDefList() {
        return this.selectList(PeriodTaskDef.class, "com.hex.ds.hdrs.period.task.dao.PeriodTaskDefDao.qryTaskDefList");
    }
    
    public List<PeriodTaskDef> qryTaskDef(Map map,Page page) {
        return this.selectPage(PeriodTaskDef.class, "com.hex.ds.hdrs.period.task.dao.PeriodTaskDefDao.qryTaskDef",page,map);
    }
    public List<PeriodTaskDef> qryTaskDefNotCurrApp(Map map,Page page) {
        return this.selectPage(PeriodTaskDef.class, "com.hex.ds.hdrs.period.task.dao.PeriodTaskDefDao.qryTaskDefNotCurrApp",page,map);
    }

    public PeriodTaskDef qryPeriodTaskDef(Map map) {
        return this.selectOne(PeriodTaskDef.class, "com.hex.ds.hdrs.period.task.dao.PeriodTaskDefDao.qryPeriodTaskDef", map);
    }

    public List<PeriodTaskDef> qryTaskDefList(Map map) {
        return this.selectList(PeriodTaskDef.class, "com.hex.ds.hdrs.period.task.dao.PeriodTaskDefDao.qryPeriodTaskDef", map);
    }

    public List<PeriodTaskDef> qryTaskDefDependList(Map map,Page page) {
        return this.selectPage(PeriodTaskDef.class, "com.hex.ds.hdrs.period.task.dao.PeriodTaskDefDao.qryTaskDefDepend",page, map);
    }

    /*
     * @Method: insert <br>
     * @Param: [periodTaskDef] <br>
     * @Return: int <br>
     * @Description：新增周期任务定义<br>
     * @Author： wz.li<br>
     * @Date： 2023/3/22 15:50 <br>
     * @Version： V2.0.2<br>
     */
    public int insert(PeriodTaskDef periodTaskDef) {
        return this.insert("com.hex.ds.hdrs.period.task.dao.PeriodTaskDefDao.insert", periodTaskDef);
    }

    public int update(PeriodTaskDef periodTaskDef) {
        return this.update("com.hex.ds.hdrs.period.task.dao.PeriodTaskDefDao.update", periodTaskDef);
    }

    public int removeById(String pkId) {
        return this.delete("com.hex.ds.hdrs.period.task.dao.PeriodTaskDefDao.removeById", pkId);
    }

    public int removeByJobCode(String jobCode) {
        return this.delete("com.hex.ds.hdrs.period.task.dao.PeriodTaskDefDao.removeByJobCode", jobCode);
    }

    public int qryTaskDefCount() {
        return this.selectOne(Integer.class, "com.hex.ds.hdrs.period.task.dao.PeriodTaskDefDao.qryTaskDefCount", null);
    }

    public List<PeriodTaskDef> qryTaskPage(Map paramMap, Page page){
        return this.selectPage(PeriodTaskDef.class, "com.hex.ds.hdrs.period.task.dao.PeriodTaskDefDao.qryTaskDefList", page, paramMap);
    }
}
